package top.infopub.mgr.bpa.dao;

import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Param;
import top.infopub.mgr.bpa.domain.BpaProjectDomain;
import top.infopub.mgr.bpa.domain.ContractNegDomain;
import top.infopub.mgr.bpa.vo.ContractPublicVo;
import top.infopub.model.bpa.*;

import java.util.List;

public interface BpaContractBpaReviewDao {
    Page<ContractNegDomain> selectByDomain(ContractPublicVo contractPublicVo);

    BpaContractBpaReview selectById(String id);

    BpaContractReviewPublic selectReviewPublic(@Param("id") String id, @Param("type") String type);

    BpaProjectDomain selectProject(String proCode);

    List<BpaContractSummary> selectSummary(@Param("id") String id, @Param("type") String type);

    List<BpaContractListing> selectListing(@Param("id") String id, @Param("type") String type);

    List<BpaContractListing> querySubByContractId(@Param("id") String id);

    BpaContractBusiness selectBusiness(@Param("id") String id, @Param("type") String type);

    List<BpaContractFormula> selectFormula(@Param("id") String id, @Param("type") String type);

    BpaContractBid selectBid(@Param("id") String id, @Param("type") String type);

    void updateReview(BpaContractBpaReview contractReview);

    void insertReview(BpaContractBpaReview contractReview);

    void deletePublic(String id,String type);

    void insertPublic(BpaContractReviewPublic bpaContractReviewPublic);

    void deleteSummary(String id,String type);

    void insertBatchSummary(List<BpaContractSummary> bpaContractSummary);

    void deleteListing(String id,String type);

    void insertBatchListing(List<BpaContractListing> bpaContractListing);

    void deleteBusiness(String id,String type);

    void insertBusiness(BpaContractBusiness bpaContractBusiness);

    void deleteFormula(String id,String type);

    void insertBatchFormula(List<BpaContractFormula> bpaContractFormula);

    void deleteBid(String id,String type);

    BpaProjectDomain selectByDomain1(String proCode);

    List<BpaContractBpaReview> selectByProCode(String proCode);

    void insertBid(BpaContractBid bpaContractBid);
}
